package date0708am;

import java.io.IOException;
import java.io.InputStream;

public class ClasspathTest {

	public static void main(String[] args) throws IOException {
		
		/*
		// 获取所有的系统属性 ( Properties类是 Hashtable类的子类 ，属于 Map集合 )
		Properties properties = System.getProperties();
		// 获取由系统属性的名称组成的Set集合
		Set<Object> keySet = properties.keySet();
		// 使用 for-each 循环遍历 Set 集合
		for( Object key : keySet ) {
			// 输出 属性名称 和 属性值
			System.out.println( key + " : " + properties.get( key ) );
		}
		*/
		
		// 所谓的 【类路径】 就是 JVM 从哪些路径下 或 文件中 寻找需要使用到类
		String classpath = System.getProperty( "java.class.path" );
		System.out.println( classpath );
		
		// 获得指定类对应的 Class对象
		Class<?> c = ClasspathTest.class ;
		
		// 注意 getResourceAsStream 中的 第一个 / 表示当前类路径根目录
		InputStream in = c.getResourceAsStream( "/jdbc.properties" );
		// 从 Java 9 开始 InputStream 提供了 readAllBytes 方法
		byte[] bytes = in.readAllBytes(); 
		in.close();
		
		String s = new String( bytes );
		System.out.println( s );

	}

}
